using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;using Maxleaf.EDI.Domain.K3;

namespace Maxleaf.EDI.DataAccess.K3
{
    public class t_ICItemPlanMap : EntityTypeConfiguration<t_ICItemPlan>
    {
        public t_ICItemPlanMap()
        {
            // Primary Key
            this.HasKey(t => t.FItemID);

            // Properties
            this.Property(t => t.FItemID)
                .HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);

            this.Property(t => t.FContainerName)
                .HasMaxLength(50);

            // Table & Column Mappings
            this.ToTable("t_ICItemPlan");
            this.Property(t => t.FItemID).HasColumnName("FItemID");
            this.Property(t => t.FPlanTrategy).HasColumnName("FPlanTrategy");
            this.Property(t => t.FOrderTrategy).HasColumnName("FOrderTrategy");
            this.Property(t => t.FLeadTime).HasColumnName("FLeadTime");
            this.Property(t => t.FFixLeadTime).HasColumnName("FFixLeadTime");
            this.Property(t => t.FTotalTQQ).HasColumnName("FTotalTQQ");
            this.Property(t => t.FQtyMin).HasColumnName("FQtyMin");
            this.Property(t => t.FQtyMax).HasColumnName("FQtyMax");
            this.Property(t => t.FCUUnitID).HasColumnName("FCUUnitID");
            this.Property(t => t.FOrderInterVal).HasColumnName("FOrderInterVal");
            this.Property(t => t.FBatchAppendQty).HasColumnName("FBatchAppendQty");
            this.Property(t => t.FOrderPoint).HasColumnName("FOrderPoint");
            this.Property(t => t.FBatFixEconomy).HasColumnName("FBatFixEconomy");
            this.Property(t => t.FBatChangeEconomy).HasColumnName("FBatChangeEconomy");
            this.Property(t => t.FRequirePoint).HasColumnName("FRequirePoint");
            this.Property(t => t.FPlanPoint).HasColumnName("FPlanPoint");
            this.Property(t => t.FDefaultRoutingID).HasColumnName("FDefaultRoutingID");
            this.Property(t => t.FDefaultWorkTypeID).HasColumnName("FDefaultWorkTypeID");
            this.Property(t => t.FProductPrincipal).HasColumnName("FProductPrincipal");
            this.Property(t => t.FDailyConsume).HasColumnName("FDailyConsume");
            this.Property(t => t.FMRPCon).HasColumnName("FMRPCon");
            this.Property(t => t.FPlanner).HasColumnName("FPlanner");
            this.Property(t => t.FPutInteger).HasColumnName("FPutInteger");
            this.Property(t => t.FInHighLimit).HasColumnName("FInHighLimit");
            this.Property(t => t.FInLowLimit).HasColumnName("FInLowLimit");
            this.Property(t => t.FLowestBomCode).HasColumnName("FLowestBomCode");
            this.Property(t => t.FMRPOrder).HasColumnName("FMRPOrder");
            this.Property(t => t.FIsCharSourceItem).HasColumnName("FIsCharSourceItem");
            this.Property(t => t.FCharSourceItemID).HasColumnName("FCharSourceItemID");
            this.Property(t => t.FPlanMode).HasColumnName("FPlanMode");
            this.Property(t => t.FCtrlType).HasColumnName("FCtrlType");
            this.Property(t => t.FCtrlStraregy).HasColumnName("FCtrlStraregy");
            this.Property(t => t.FContainerName).HasColumnName("FContainerName");
            this.Property(t => t.FKanBanCapability).HasColumnName("FKanBanCapability");
        }
    }
}
